import { getFile, uploadFile } from '@/api/file.js';
export default {
  methods: {
    tinymceInit() {
      // eslint-disable-next-line no-undef
      tinymce.init({
        selector: '#tinymce', // css选择器，和jquery的选择器一个道理，建议直接用id
        // 需要在官网自己下载一个全局的langs包。同时我提供的powerpaste本身自带一个langs包里面含中文，所以可以100%支持中文。
        language: 'zh_CN',
        // language_url: 'http://tinymce.ax-z.cn/static/tiny/langs/zh_CN.js',
        content_style: 'img {max-width:100%;}',
        toolbar: [
          'searchreplace fontsizeselect bold italic underline strikethrough alignleft aligncenter alignright outdent indent  blockquote undo redo removeformat subscript superscript code codesample',
          'hr bullist numlist link image charmap preview anchor pagebreak insertdatetime media table  forecolor backcolor fullscreen'
        ],
        plugins: [
          'advlist anchor autolink autosave code codesample colorpicker colorpicker contextmenu directionality  fullscreen hr image imagetools insertdatetime link lists media nonbreaking noneditable pagebreak powerpaste preview print save searchreplace spellchecker tabfocus table template textcolor textpattern visualblocks visualchars wordcount'
        ],
        height: 500,
        end_container_on_empty_block: true,
        advlist_bullet_styles: 'square',
        advlist_number_styles: 'default',
        imagetools_cors_hosts: ['www.tinymce.com', 'codepen.io'],
        default_link_target: '_blank',
        link_title: false,
        nonbreaking_force_tab: true,
        code_dialog_height: 450,
        code_dialog_width: 1000,
        powerpaste_word_import: 'propmt', // 参数可以是propmt, merge, clear，效果自行切换对比
        powerpaste_html_import: 'propmt', // propmt, merge, clear
        powerpaste_allow_local_images: true,
        paste_data_images: true,
        images_upload_handler(blobInfo, success, failure) {
          var xhr, formData;
          xhr = new XMLHttpRequest();
          xhr.withCredentials = false;
          // const uploadFile = 'https://test.tianjinhealth.cn:9999/health_edu/admin-service/admin/resource/uploadFile'
          xhr.open('POST', uploadFile);

          xhr.onload = function() {
            var json;
            if (xhr.status !== 200) {
              failure('HTTP Error: ' + xhr.status);
              return;
            }
            json = JSON.parse(xhr.responseText);
            console.log(json);
            if (!json || !json.data || typeof json.data.id !== 'string') {
              failure('Invalid JSON: ' + xhr.responseText);
              return;
            }
            console.log(json.data.id);
            // success(json.location);
            success(getFile + json.data.id);
          };

          formData = new FormData();
          formData.append('file', blobInfo.blob(), blobInfo.filename());
          formData.append('uid', '123');
          formData.append('fileType', 'pic');
          xhr.send(formData);

          // 这个函数主要处理word中的图片，并自动完成上传；
          // ajaxUpload是自己定义的一个函数；在回调中，记得调用success函数，传入上传好的图片地址；
          // blobInfo.blob() 得到图片的file对象；
          // ajaxUpload(blobInfo.blob()).then((data) => {
          //   // 上传成功后，调用success函数传入图片地址
          //   success(data.uploadedImageUrl)
          // })
        }
        // // 文件上传
        // file_picker_callback(callback, value, meta) {
        //   //文件分类
        //   var filetype =
        //     ".pdf, .txt, .zip, .rar, .7z, .doc, .docx, .xls, .xlsx, .ppt, .pptx, .mp3, .mp4";
        //   var resourcesType = ''
        //   //后端接收上传文件的地址
        //   var upurl = uploadFile;
        //   //为不同插件指定文件类型及后端地址
        //   switch (meta.filetype) {
        //     case "image":
        //       filetype = ".jpg, .jpeg, .png, .gif";
        //       upurl = uploadFile;
        //       resourcesType = 'pic'
        //       break;
        //     case "media":
        //       filetype = ".mp3, .mp4";
        //       upurl = uploadFile;
        //       resourcesType = 'media'
        //       break;
        //     case "file":
        //     default:
        //   }
        //   //模拟出一个input用于添加本地文件
        //   var input = document.createElement("input");
        //   input.setAttribute("type", "file");
        //   input.setAttribute("accept", filetype);
        //   input.click();
        //   input.onchange = function() {
        //     var file = this.files[0];

        //     var xhr, formData;
        //     console.log(file.name);
        //     xhr = new XMLHttpRequest();
        //     xhr.withCredentials = false;
        //     xhr.open("POST", upurl);
        //     xhr.onload = function() {
        //       var json;
        //       if (xhr.status != 200) {
        //         failure("HTTP Error: " + xhr.status);
        //         return;
        //       }
        //       json = JSON.parse(xhr.responseText);
        //       if (!json || typeof json.location != "string") {
        //         failure("Invalid JSON: " + xhr.responseText);
        //         return;
        //       }
        //       callback(json.location);
        //     };
        //     formData = new FormData();
        //     formData.append("file", file, file.name);
        //     formData.append('uid','123');
        //     formData.append('fileType',resourcesType);
        //     xhr.send(formData);
        //   };
        // }
        // tinymce的其他配置参数
      });
    }
  }
};
